package com.example.weather_forecast;


import android.content.Context;

import java.util.List;

public class CityManager {

    private CityDao cityDao;

    public CityManager(Context context) {
        // 获取 Room 数据库的 CityDao 实例
        AppDatabase db = AppDatabase.getDatabase(context);
        cityDao = db.cityDao();
    }

    // 添加城市
    public void addCity(City city) {
        new Thread(() -> {
            cityDao.insert(city);  // 通过 DAO 插入城市
        }).start();
    }

    // 移除城市
    public void removeCity(City city) {
        new Thread(() -> {
            cityDao.delete(city);  // 通过 DAO 删除城市
        }).start();
    }

    // 查找城市
    public boolean findCityByName(String cityName) {
        new Thread(() -> {
            City city = cityDao.findCityByName(cityName);  // 通过 DAO 查找城市
            return city != null;
        }).start();
        return false;  // 目前方法无法直接返回，因为是异步操作，需使用回调
    }

    // 获取所有城市
    public List<City> getAllCities() {
        List<City> cities;
        new Thread(() -> {
            cities = cityDao.getAllCities();  // 获取所有城市
        }).start();
        return cities;  // 这部分仍需异步更新 UI 或者 LiveData
    }
}
